﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SimpleGraphLib
{
    public class Edge<TVertex> : IEdge<TVertex>
    {
        TVertex _Source;
        TVertex _Dest;
        double _Weight;

        public TVertex Source
        {
            get { return _Source; }
        }

        public TVertex Dest
        {
            get { return _Dest; }
        }

        public double Weight
        {
            get { return _Weight; }
        }

        #region [Constructors]
        public Edge(TVertex source, TVertex dest)
        {
            _Source = source;
            _Dest = dest;
        }

        public Edge(TVertex source, TVertex dest, double weight)
        {
            _Source = source;
            _Dest = dest;
            _Weight = Weight;
        }
        #endregion
    }
}
